03 Mudando o ambiente com cross-env

Próxima Atividade
  • Sugerir melhoria
Play
Current Time 0:00
/
Duration Time 0:00
Remaining Time -0:00
Stream TypeLIVE
Loaded: 0%
Progress: 0%
0:00
Fullscreen
00:00
Mute
Playback Rate
  • 2x
  • 1.5x
  • 1.2x
  • 1x
  • 0.8x
  • 0.7x
1x
Subtitles
  • subtitles off
Captions
  • captions off
Chapters
  • Chapters
HD

Transcrição

Para garantirmos que a mudança da variável de ambiente funcionará em qualquer plataforma, pediremos a ajuda de um módulo do NodeJS. No Terminal, acessaremos a pasta projeto webpack client, depois usaremos o comando npm install para o cross-env:

client caelum$ npm install cross-env@5.0.1 --save-dev

O módulo cross-env nos permite setar as variáveis de ambiente cross platform. Após a instalação, encontraremos o cross-env, abaixo do babili-webpack-plugin no package.json.

 "devDependencies": {
    "babel-core": "^6.25.0",
    "babel-loader": "^7.1.0",
    "babel-plugin-transform-decorators-legacy": "^1.3.4",
    "babel-preset-es2017": "^6.24.1",
    "babili-webpack-plugin": "^0.1.1",
    "cross-env": "^5.0.1",
    "webpack": "^3.1.0"
}

Depois, faremos um pequena alteração no build-prod, adicionando cross-env:

"scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "build-dev": "webpack --config webpack.config.js",
    "build-prod": "cross-env NODE_ENV=production webpack  --config webpack.config.js"
},

Quem será responsável por setar a variável de ambiente será cross-env.

Em seguida, de volta ao Terminal, usaremos o seguinte comando:

client caelum$ npm run build-prod

O processo continuará como o esperado, funcionando tanto no Windows como em outros sistemas operacionais. Com isso, resolvemos o problema da minificação no build de produção. No entanto, falta fazer uma melhoria. Estamos usando um servidor disponibilizado por mim para tornar a aplicação acessível - que é um piloto de uma single page application. Mas queremos criar algo com caracter mais professional, usando um servidor consolidado pela comunidade para trabalhar com Webpack em ambiente de desenvolvimento. Veremos isso mais adiante.

Tirar dúvida Próxima Atividade
ícone Webpack: Manipulando módulos na sua webapp

Webpack: Manipulando módulos na sua webapp

100%
Aula02 de 06

Preparando o build de produção

Atividades 3 de 7

  • 01 Preparando o build de produção 09min
  • 02 Configurando um build de produção
  • 03 Mudando o ambiente com cross-env 02min
  • 04 Uma configuração a ser analisada
  • 05 Sobre o uso do cross-env
  • 06 O que aprendemos?
  • 07 Consolidando seu conhecimento

Aulas

Outros Links

Fórum Trocar Curso
Gravatar de Marcos Katsumi Kay

Marcos Katsumi Kay 34.0k xp

Logo da Alura